package day12;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;

// 测试   日期格式化工具类
public class Test3_SimplDF {
    public static void main(String[] args) throws ParseException {
//        method();//两种类型的 日期数据互转
        method2();//接收用户输入的出生日期，计算存活天数
    }
    //练习
    public static void method2() throws ParseException {
        //接收用户输入的出生日期
        String birthday = new Scanner(System.in).nextLine();
        //1, 创建SimpleDateFormat对象 -- 用来转换日期的格式
        //参数是日期的格式--y表示年 M表示月 d表示日 -是分隔符
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        Date date = sdf.parse(birthday) ;

        long birth = date.getTime() ;//出生时的毫秒值
        long now = System.currentTimeMillis() ;//当前的毫秒值
        System.out.println( ( now-birth ) /1000/60/60/24 );//ms->天
    }
    //两种类型的 日期数据互转
    public static void method() throws ParseException {
        String date = "2020-9-21";
        //1, 创建SimpleDateFormat对象 -- 参数是日期的格式
        //y表示年 M表示月 d表示日 -是分隔符
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        //2, 把String类型的日期  转成 Date类型
        Date d = sdf.parse(date);
        System.out.println( d.getYear() );//120
        System.out.println( d.getMonth() + 1 );//9
        System.out.println( d.getDate() );//21
//      String format(Date date)--把Date转成String
        Date da = new Date();
        String str = sdf.format(da)  ;
        System.out.println(str);//2020-10-21
        //三合一
        System.out.println( sdf.format(new Date()) );
    }
}
